Con uently Persistent Deques via Data-Structural Bootstrapping
نویسندگان
چکیده
We introduce data-structural bootstrapping, a technique to design data structures recursively, and use it to design con uently persistent deques. Our data structure requires O(log k) worstcase time and space per deletion, where k is the total number of deque operations, and constant worst-case time and space for other operations. Further, the data structure allows a purely functional implementation, with no side e ects. This improves a previous result of Driscoll, Sleator, and Tarjan. An extended abstract of this paper was presented at the 4th ACM-SIAM Symposium on Discrete Algorithms, 1993. Supported by a Fannie and John Hertz Foundation fellowship, National Science Foundation Grant No. CCR-8920505, and the Center for Discrete Mathematics and Theoretical Computer Science (DIMACS) under NSF-STC88-09648. Also a liated with NEC Research Institute, 4 Independence Way, Princeton, NJ 08540. Research at Princeton University partially supported by the National Science Foundation, Grant No. CCR-8920505, the O ce of Naval Research, Contract No. N00014-91-J-1463, and by DIMACS under NSF-STC88-09648.
منابع مشابه
Confluently Persistent Deques via Data Structural Bootstrapping
We introduce data structural bootstrapping, a technique to design data structures recursively, and use it to design confluently persistent deques. Our data structure requires O(log* k) amortized time and space per deletion, where k is the total number of deque operations, and constant amortized time for other operations. This improves a previous result of Driscoll, Sleator, and Tarjan.
متن کاملBootstrapping and Startup of an object-oriented Operating System
The Plurix project implements an object-oriented Operating System (OS) for PC clusters. Network communication is implemented via the well-known Distributed Shared Memory (DSM) paradigm using restartable transactions and an optimistic synchronization scheme to implement memory consistency. The total OS (including kernel and drivers) reside in the persistent DSM – there is no distinction between ...
متن کاملReal-Time Persistent Queues and Deques with Logic Variables (Declarative Pearl)
We present a Prolog implementation of real-time persistent queues and double-ended queues. Our implementation is inspired by Okasaki’s lazy-functional approach, but relies only on standard Prolog, comprising of the pure subset plus if-then-else constructs to efficiently implement guards and meta-calls for convenience. The resulting data structure is a nice demonstration of the fact that the use...
متن کاملPractical Memory Checkers for Stacks, Queues and Deques
A memory checker for a data structure provides a method to check that the output of the data structure operations is consistent with the input even if the data is stored on some insecure medium. In 8] we present a general solution for all data structures that are based on insert(i; v) and delete(j) commands. In particular this includes stacks, queues, deques (double-ended queues) and lists. Her...
متن کاملBootstrapping a Spatial
We consider the problem of resampling or bootstrapping a point process to get con dence intervals for the reduced second moment function We propose a resampling scheme for spatial data which we call the marked point method This is a variant of the block of blocks bootstrap rst introduced by K unsch A simulation study with a Poisson a clustered and a regular point process on the unit square in R...
متن کامل